↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
flat_in_ag(niltree, nil) → flat_out_ag(niltree, nil)
flat_in_ag(tree(X, niltree, XS), cons(X, YS)) → U1_ag(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
right_in_aa(tree(X, XS1, XS2), XS2) → right_out_aa(tree(X, XS1, XS2), XS2)
U1_ag(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_ag(X, XS, YS, flat_in_ag(ZS, YS))
flat_in_ag(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_ag(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
U3_ag(X, Y, YS1, YS2, XS, ZS, flat_out_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS)) → flat_out_ag(tree(X, tree(Y, YS1, YS2), XS), ZS)
U2_ag(X, XS, YS, flat_out_ag(ZS, YS)) → flat_out_ag(tree(X, niltree, XS), cons(X, YS))
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PrologToPiTRSProof
flat_in_ag(niltree, nil) → flat_out_ag(niltree, nil)
flat_in_ag(tree(X, niltree, XS), cons(X, YS)) → U1_ag(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
right_in_aa(tree(X, XS1, XS2), XS2) → right_out_aa(tree(X, XS1, XS2), XS2)
U1_ag(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_ag(X, XS, YS, flat_in_ag(ZS, YS))
flat_in_ag(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_ag(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
U3_ag(X, Y, YS1, YS2, XS, ZS, flat_out_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS)) → flat_out_ag(tree(X, tree(Y, YS1, YS2), XS), ZS)
U2_ag(X, XS, YS, flat_out_ag(ZS, YS)) → flat_out_ag(tree(X, niltree, XS), cons(X, YS))
FLAT_IN_AG(tree(X, niltree, XS), cons(X, YS)) → U1_AG(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
FLAT_IN_AG(tree(X, niltree, XS), cons(X, YS)) → RIGHT_IN_AA(tree(X, niltree, XS), ZS)
U1_AG(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_AG(X, XS, YS, flat_in_ag(ZS, YS))
U1_AG(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → FLAT_IN_AG(ZS, YS)
FLAT_IN_AG(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_AG(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
FLAT_IN_AG(tree(X, tree(Y, YS1, YS2), XS), ZS) → FLAT_IN_AG(tree(Y, YS1, tree(X, YS2, XS)), ZS)
flat_in_ag(niltree, nil) → flat_out_ag(niltree, nil)
flat_in_ag(tree(X, niltree, XS), cons(X, YS)) → U1_ag(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
right_in_aa(tree(X, XS1, XS2), XS2) → right_out_aa(tree(X, XS1, XS2), XS2)
U1_ag(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_ag(X, XS, YS, flat_in_ag(ZS, YS))
flat_in_ag(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_ag(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
U3_ag(X, Y, YS1, YS2, XS, ZS, flat_out_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS)) → flat_out_ag(tree(X, tree(Y, YS1, YS2), XS), ZS)
U2_ag(X, XS, YS, flat_out_ag(ZS, YS)) → flat_out_ag(tree(X, niltree, XS), cons(X, YS))
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PrologToPiTRSProof
FLAT_IN_AG(tree(X, niltree, XS), cons(X, YS)) → U1_AG(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
FLAT_IN_AG(tree(X, niltree, XS), cons(X, YS)) → RIGHT_IN_AA(tree(X, niltree, XS), ZS)
U1_AG(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_AG(X, XS, YS, flat_in_ag(ZS, YS))
U1_AG(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → FLAT_IN_AG(ZS, YS)
FLAT_IN_AG(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_AG(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
FLAT_IN_AG(tree(X, tree(Y, YS1, YS2), XS), ZS) → FLAT_IN_AG(tree(Y, YS1, tree(X, YS2, XS)), ZS)
flat_in_ag(niltree, nil) → flat_out_ag(niltree, nil)
flat_in_ag(tree(X, niltree, XS), cons(X, YS)) → U1_ag(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
right_in_aa(tree(X, XS1, XS2), XS2) → right_out_aa(tree(X, XS1, XS2), XS2)
U1_ag(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_ag(X, XS, YS, flat_in_ag(ZS, YS))
flat_in_ag(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_ag(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
U3_ag(X, Y, YS1, YS2, XS, ZS, flat_out_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS)) → flat_out_ag(tree(X, tree(Y, YS1, YS2), XS), ZS)
U2_ag(X, XS, YS, flat_out_ag(ZS, YS)) → flat_out_ag(tree(X, niltree, XS), cons(X, YS))
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PrologToPiTRSProof
FLAT_IN_AG(tree(X, niltree, XS), cons(X, YS)) → U1_AG(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
U1_AG(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → FLAT_IN_AG(ZS, YS)
FLAT_IN_AG(tree(X, tree(Y, YS1, YS2), XS), ZS) → FLAT_IN_AG(tree(Y, YS1, tree(X, YS2, XS)), ZS)
flat_in_ag(niltree, nil) → flat_out_ag(niltree, nil)
flat_in_ag(tree(X, niltree, XS), cons(X, YS)) → U1_ag(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
right_in_aa(tree(X, XS1, XS2), XS2) → right_out_aa(tree(X, XS1, XS2), XS2)
U1_ag(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_ag(X, XS, YS, flat_in_ag(ZS, YS))
flat_in_ag(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_ag(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
U3_ag(X, Y, YS1, YS2, XS, ZS, flat_out_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS)) → flat_out_ag(tree(X, tree(Y, YS1, YS2), XS), ZS)
U2_ag(X, XS, YS, flat_out_ag(ZS, YS)) → flat_out_ag(tree(X, niltree, XS), cons(X, YS))
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ PrologToPiTRSProof
FLAT_IN_AG(tree(X, niltree, XS), cons(X, YS)) → U1_AG(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
U1_AG(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → FLAT_IN_AG(ZS, YS)
FLAT_IN_AG(tree(X, tree(Y, YS1, YS2), XS), ZS) → FLAT_IN_AG(tree(Y, YS1, tree(X, YS2, XS)), ZS)
right_in_aa(tree(X, XS1, XS2), XS2) → right_out_aa(tree(X, XS1, XS2), XS2)
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ UsableRulesReductionPairsProof
↳ PrologToPiTRSProof
U1_AG(YS, right_out_aa) → FLAT_IN_AG(YS)
FLAT_IN_AG(cons(X, YS)) → U1_AG(YS, right_in_aa)
FLAT_IN_AG(ZS) → FLAT_IN_AG(ZS)
right_in_aa → right_out_aa
right_in_aa
No rules are removed from R.
U1_AG(YS, right_out_aa) → FLAT_IN_AG(YS)
FLAT_IN_AG(cons(X, YS)) → U1_AG(YS, right_in_aa)
POL(FLAT_IN_AG(x1)) = 2 + x1
POL(U1_AG(x1, x2)) = 1 + x1 + x2
POL(cons(x1, x2)) = 2 + x1 + 2·x2
POL(right_in_aa) = 2
POL(right_out_aa) = 2
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ UsableRulesReductionPairsProof
↳ QDP
↳ UsableRulesProof
↳ PrologToPiTRSProof
FLAT_IN_AG(ZS) → FLAT_IN_AG(ZS)
right_in_aa → right_out_aa
right_in_aa
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ UsableRulesReductionPairsProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ PrologToPiTRSProof
FLAT_IN_AG(ZS) → FLAT_IN_AG(ZS)
right_in_aa
right_in_aa
↳ Prolog
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ UsableRulesReductionPairsProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ NonTerminationProof
↳ PrologToPiTRSProof
FLAT_IN_AG(ZS) → FLAT_IN_AG(ZS)
FLAT_IN_AG(ZS) → FLAT_IN_AG(ZS)
flat_in_ag(niltree, nil) → flat_out_ag(niltree, nil)
flat_in_ag(tree(X, niltree, XS), cons(X, YS)) → U1_ag(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
right_in_aa(tree(X, XS1, XS2), XS2) → right_out_aa(tree(X, XS1, XS2), XS2)
U1_ag(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_ag(X, XS, YS, flat_in_ag(ZS, YS))
flat_in_ag(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_ag(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
U3_ag(X, Y, YS1, YS2, XS, ZS, flat_out_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS)) → flat_out_ag(tree(X, tree(Y, YS1, YS2), XS), ZS)
U2_ag(X, XS, YS, flat_out_ag(ZS, YS)) → flat_out_ag(tree(X, niltree, XS), cons(X, YS))
Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
flat_in_ag(niltree, nil) → flat_out_ag(niltree, nil)
flat_in_ag(tree(X, niltree, XS), cons(X, YS)) → U1_ag(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
right_in_aa(tree(X, XS1, XS2), XS2) → right_out_aa(tree(X, XS1, XS2), XS2)
U1_ag(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_ag(X, XS, YS, flat_in_ag(ZS, YS))
flat_in_ag(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_ag(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
U3_ag(X, Y, YS1, YS2, XS, ZS, flat_out_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS)) → flat_out_ag(tree(X, tree(Y, YS1, YS2), XS), ZS)
U2_ag(X, XS, YS, flat_out_ag(ZS, YS)) → flat_out_ag(tree(X, niltree, XS), cons(X, YS))
FLAT_IN_AG(tree(X, niltree, XS), cons(X, YS)) → U1_AG(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
FLAT_IN_AG(tree(X, niltree, XS), cons(X, YS)) → RIGHT_IN_AA(tree(X, niltree, XS), ZS)
U1_AG(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_AG(X, XS, YS, flat_in_ag(ZS, YS))
U1_AG(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → FLAT_IN_AG(ZS, YS)
FLAT_IN_AG(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_AG(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
FLAT_IN_AG(tree(X, tree(Y, YS1, YS2), XS), ZS) → FLAT_IN_AG(tree(Y, YS1, tree(X, YS2, XS)), ZS)
flat_in_ag(niltree, nil) → flat_out_ag(niltree, nil)
flat_in_ag(tree(X, niltree, XS), cons(X, YS)) → U1_ag(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
right_in_aa(tree(X, XS1, XS2), XS2) → right_out_aa(tree(X, XS1, XS2), XS2)
U1_ag(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_ag(X, XS, YS, flat_in_ag(ZS, YS))
flat_in_ag(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_ag(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
U3_ag(X, Y, YS1, YS2, XS, ZS, flat_out_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS)) → flat_out_ag(tree(X, tree(Y, YS1, YS2), XS), ZS)
U2_ag(X, XS, YS, flat_out_ag(ZS, YS)) → flat_out_ag(tree(X, niltree, XS), cons(X, YS))
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
FLAT_IN_AG(tree(X, niltree, XS), cons(X, YS)) → U1_AG(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
FLAT_IN_AG(tree(X, niltree, XS), cons(X, YS)) → RIGHT_IN_AA(tree(X, niltree, XS), ZS)
U1_AG(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_AG(X, XS, YS, flat_in_ag(ZS, YS))
U1_AG(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → FLAT_IN_AG(ZS, YS)
FLAT_IN_AG(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_AG(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
FLAT_IN_AG(tree(X, tree(Y, YS1, YS2), XS), ZS) → FLAT_IN_AG(tree(Y, YS1, tree(X, YS2, XS)), ZS)
flat_in_ag(niltree, nil) → flat_out_ag(niltree, nil)
flat_in_ag(tree(X, niltree, XS), cons(X, YS)) → U1_ag(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
right_in_aa(tree(X, XS1, XS2), XS2) → right_out_aa(tree(X, XS1, XS2), XS2)
U1_ag(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_ag(X, XS, YS, flat_in_ag(ZS, YS))
flat_in_ag(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_ag(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
U3_ag(X, Y, YS1, YS2, XS, ZS, flat_out_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS)) → flat_out_ag(tree(X, tree(Y, YS1, YS2), XS), ZS)
U2_ag(X, XS, YS, flat_out_ag(ZS, YS)) → flat_out_ag(tree(X, niltree, XS), cons(X, YS))
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
FLAT_IN_AG(tree(X, niltree, XS), cons(X, YS)) → U1_AG(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
U1_AG(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → FLAT_IN_AG(ZS, YS)
FLAT_IN_AG(tree(X, tree(Y, YS1, YS2), XS), ZS) → FLAT_IN_AG(tree(Y, YS1, tree(X, YS2, XS)), ZS)
flat_in_ag(niltree, nil) → flat_out_ag(niltree, nil)
flat_in_ag(tree(X, niltree, XS), cons(X, YS)) → U1_ag(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
right_in_aa(tree(X, XS1, XS2), XS2) → right_out_aa(tree(X, XS1, XS2), XS2)
U1_ag(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → U2_ag(X, XS, YS, flat_in_ag(ZS, YS))
flat_in_ag(tree(X, tree(Y, YS1, YS2), XS), ZS) → U3_ag(X, Y, YS1, YS2, XS, ZS, flat_in_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS))
U3_ag(X, Y, YS1, YS2, XS, ZS, flat_out_ag(tree(Y, YS1, tree(X, YS2, XS)), ZS)) → flat_out_ag(tree(X, tree(Y, YS1, YS2), XS), ZS)
U2_ag(X, XS, YS, flat_out_ag(ZS, YS)) → flat_out_ag(tree(X, niltree, XS), cons(X, YS))
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
FLAT_IN_AG(tree(X, niltree, XS), cons(X, YS)) → U1_AG(X, XS, YS, right_in_aa(tree(X, niltree, XS), ZS))
U1_AG(X, XS, YS, right_out_aa(tree(X, niltree, XS), ZS)) → FLAT_IN_AG(ZS, YS)
FLAT_IN_AG(tree(X, tree(Y, YS1, YS2), XS), ZS) → FLAT_IN_AG(tree(Y, YS1, tree(X, YS2, XS)), ZS)
right_in_aa(tree(X, XS1, XS2), XS2) → right_out_aa(tree(X, XS1, XS2), XS2)
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ UsableRulesReductionPairsProof
FLAT_IN_AG(cons(X, YS)) → U1_AG(X, YS, right_in_aa)
U1_AG(X, YS, right_out_aa) → FLAT_IN_AG(YS)
FLAT_IN_AG(ZS) → FLAT_IN_AG(ZS)
right_in_aa → right_out_aa
right_in_aa
No rules are removed from R.
FLAT_IN_AG(cons(X, YS)) → U1_AG(X, YS, right_in_aa)
POL(FLAT_IN_AG(x1)) = x1
POL(U1_AG(x1, x2, x3)) = x1 + 2·x2 + 2·x3
POL(cons(x1, x2)) = 1 + 2·x1 + 2·x2
POL(right_in_aa) = 0
POL(right_out_aa) = 0
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ UsableRulesReductionPairsProof
↳ QDP
↳ DependencyGraphProof
U1_AG(X, YS, right_out_aa) → FLAT_IN_AG(YS)
FLAT_IN_AG(ZS) → FLAT_IN_AG(ZS)
right_in_aa → right_out_aa
right_in_aa
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ UsableRulesReductionPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
FLAT_IN_AG(ZS) → FLAT_IN_AG(ZS)
right_in_aa → right_out_aa
right_in_aa
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ UsableRulesReductionPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
FLAT_IN_AG(ZS) → FLAT_IN_AG(ZS)
right_in_aa
right_in_aa
↳ Prolog
↳ PrologToPiTRSProof
↳ PrologToPiTRSProof
↳ PiTRS
↳ DependencyPairsProof
↳ PiDP
↳ DependencyGraphProof
↳ PiDP
↳ UsableRulesProof
↳ PiDP
↳ PiDPToQDPProof
↳ QDP
↳ UsableRulesReductionPairsProof
↳ QDP
↳ DependencyGraphProof
↳ QDP
↳ UsableRulesProof
↳ QDP
↳ QReductionProof
↳ QDP
↳ NonTerminationProof
FLAT_IN_AG(ZS) → FLAT_IN_AG(ZS)
FLAT_IN_AG(ZS) → FLAT_IN_AG(ZS)